// 浮动粘贴板全局变量
var clipArr = [];
/**
 * 弹出提示信息
 * 
 * @param msg
 * @param times
 */
function tips(msg, times) {
	art.dialog.tips(msg, times);
}
function formateUrl(url) {
	return ROOT_PATH + url;
}
/**
 * 锁屏 artdialog
 */
function mask() {
	$(".aui_state_lock").mask("正在处理,请稍候...");
}
/**
 * 解锁artdialog
 */
function unmask() {
	$(".aui_state_lock").unmask();
}
function maskPage() {
	$("body").mask("正在处理,请稍候...");
}
function unmaskPage() {
	$("body").unmask();
}
var win;
/**
 * 界面初始化
 */
function initView() {
	$("#main").css({
		"width" : $(window).width(),
		"height" : $(window).height()
	});
	
	tabWidth = ($(window).width()-250)+"px";
	tabHeight =  ($(window).height()-150)+"px";
	
	
	//$("#center").css({
	//	"width" : $(window).width(),
	//	"height" : $(window).height() - 105
	//});
	/*$("#ifrm_data").css({
		"height" : $(window).height() - 170,
		"width" : $(window).width() - 280
	});*/
	
	$("#tabH").css({
		"height" : 33,
		"width" : $(window).width() - 250
	});
	
	$("#tab_body").css({
		"height" : $(window).height() - 150,
		"width" : $(window).width() - 250
	});
	

	 $("#left_menu").css({
		"height" : $(window).height() - 110
	}); 
	 
	 $("#foot_div").css({
			"width" : $(window).width()
		}); 
	
	//$("#menu").css({
	//	"height" : $(window).height() - 105
	//});
	//initClip();
}
/**
 * 自定义展开菜单
 * 
 * @param dlIndex
 *            一级栏目 索引值从0开始
 * @param ddIndex
 *            二级菜单 索引值从0开始
 */
function expandMenu(dlIndex, ddIndex, currUrl) {
	var _dl = $("#menu_item dl:eq(" + dlIndex + ")");
	var _size = _dl.find("dd").size();
	var _dd = _dl.find("dd:eq(" + ddIndex + ")");
	_dl.css({
		"display" : "block",
		"height" : (33 + 31 * _size) + "px",
		"width" : "170px"
	});
	_dl.find("dt").css({
		"color" : "#ef5404"
		//"background" : "url(\"resource/images/icon_on.png\") 132px 12px no-repeat"
		//"background" : "url(\"resource/images/icon_on.png\") 132px 12px no-repeat"
	}); 
	_dl.find("dd").css({
		"display" : "block",
		"height" : "30px",
		"width" : "130px",
		"border-bottom" : "1px dashed #FF7878"
	});
	_dd.css({
		//"background" : "#FFF",
		//"color" : "#7E5428"
	});
	_dd.addClass("menu_focus");
	//$("#ifrm_data").attr("src", _dd.attr("lang"));
	// 隐藏或显示粘贴板标签栏
	if (currUrl != _dd.attr("lang")) {
		$("#div_mark").hide();
	} else {
		$("#div_mark").show();
	}
	hiddenClip();
}
/**
 * 查看操作日志详细信息
 * 
 * @param logId
 *            日志编号
 */
function view_snap(logId) {
	art.dialog.open(ROOT_PATH+"oper/log/@.html".replace("@", logId), {
		title : "日志详细信息",
		lock : true,
		width : 830,
		height : 490,
		fixed : true,
		resize : false,
		cancel : true
	});
}
/**
 * 关闭窗口
 * 
 * @param is_refresh
 *            关闭窗口后是否刷新子页面
 */
function closeWin(is_refresh) {
	win.close();
	if (is_refresh) {
		//window.frames["ifrm_data"].location.reload();
	}
}
/**
 * 跳转到部门新增页面
 */
function addDepartment() {
	var url = "<c:url value='/department/gotoadd.html'/>"
	win = art.dialog.open(url, {
		title : "组织机构新增",
		lock : true,
		width : 450,
		height : 130,
		fixed : true,
		ok : function() {
			var iframe = this.iframe.contentWindow;
			if (!iframe.document.body) {
				art.dialog.tips("正在加载，请稍候...", 1500);
				return false;
			}
			iframe.submitForm();
			return false;
		},
		cancel : true
	});
}
/**
 * 获取粘贴板项内容
 * 
 * @returns 所有存放于粘贴板中项的ID值,返回形式为1,3,6
 */
function getClipItem() {
	var _ids = [];
	$.each(clipArr, function(index, obj) {
		_ids.push(obj.value);
	});
	return _ids.join();
}
/**
 * 获取粘贴板项内容
 * 
 * @returns 所有存放于粘贴板中项的type值,返回形式为1,0,1
 */
function getClipItemType() {
	var _types = [];
	$.each(clipArr, function(index, obj) {
		_types.push(obj.type);
	});
	return _types.join();
}
/**
 * 清空粘贴板<br>
 * 包括显示内容及值
 */
function cleanClip() {
	// 清空缓存值数组
	clipArr = [];
	// 粘贴板清空
	$("#tbl_data").empty();
	// 页面全部取消选中
	$(window.frames["ifrm_data"].document).find("#chk_all").attr("checked", false);
	$(window.frames["ifrm_data"].document).find("#tbl_datalist tr:gt(0) input[type='checkbox']").attr("checked", false);
	$("#p_num_0").text(0);
	$("#p_num_1").text(0);
	hiddenClip();
}
/**
 * 隐藏粘贴板
 */
function hiddenClip() {
	if (!$("#div_clip").is(":hidden")) {
		$("#div_clip").fadeOut();
	}
}
/**
 * 显示粘贴板
 */
function show_clip() {
	if ($("#div_clip").is(":hidden")) {
		$("#div_clip").fadeIn();
	}
}
/**
 * 更新已选中项数字值
 */
function refreshNum() {
	var _size = clipArr.length;
	var _p = _u = 0;
	for ( var i = 0; i < _size; i++) {
		if (clipArr[i] && "1" === clipArr[i].type) {
			_u++;
		} else {
			_p++;
		}
	}
	$("#p_num_0").text(_p < 0 ? 0 : _p);
	$("#p_num_1").text(_u < 0 ? 0 : _u);
}
/**
 * 删除粘贴板内容
 * 
 * @param val
 *            删除项ID
 * @param _type
 *            申报主体类型 0：个人 1：单位
 */
function removeItem(val, _type) {
	// 清空全局数组
	var _size = clipArr.length;
	for ( var i = 0; i < _size; i++) {
		if (clipArr[i].value == val) {
			clipArr.splice(i, 1);
			break;
		} else {
			continue;
		}
	}
	// 删除粘贴板列表项
	$("#tbl_data tr").each(function(index, obj) {
		if (val == $(obj).attr("lang")) {
			$(obj).remove();
			return false;
		}
	});
	// 重新排序
	$("#tbl_data tr").each(function(index, obj) {
		$(this).find("td:eq(0)").text(index + 1)
	});
	// 清空页面列表复选框选中状态
	$(window.frames["ifrm_data"].document).find("#tbl_datalist tr input[type='checkbox']").each(function(index, obj) {
		if ($(this).val() == val) {
			$(this).attr("checked", false);
		}
	});
	// 判断全选复选框是否需要选中
	$(window.frames["ifrm_data"].document).find("#chk_all").attr("checked", clipArr.length > 0);
	// 更新显示数据
	refreshNum();
}
/**
 * 向粘贴板中添加元素
 * 
 * @param status
 *            复选框的状态 true/false
 * @param val
 *            添加项值
 * @param _type
 *            申报主体 0:个人 1:单位
 * @param name
 *            添加项显示名称
 */
function pushItem(status, val, _type, name) {
	if (status) {
		var _flag = true;
		var _size = clipArr.length;
		// 判断粘贴板中是否已经存在该元素
		for ( var i = 0; i < _size; i++) {
			if (clipArr[i].value == val) {
				_flag = false;
				break;
			} else {
				continue;
			}
		}
		if (_flag) {
			var obj = new Object();
			obj.name = name;
			obj.value = val;
			obj.type = _type;
			clipArr.push(obj);
			if ($("#div_clip").is(":hidden")) {
				show_clip();
			}
			$("#tbl_data").append(
					"<tr lang=\"" + val + "\"><td class=\"c1\">" + (_size + 1) + "</td><td title=\"" + name
							+ "\"><p class=\"t_" + _type + "\">" + name
							+ "</p></td><td class=\"c3\"><a href=\"javascript:removeItem(" + val + "," + _type
							+ ");\">删除</a></td></tr>");
		} else {
			art.dialog.tips(name + "元素已存在！");
		}
	} else {
		removeItem(val, _type);
	}
	// 更新序列号
	$("#tbl_data tr").each(function(index, obj) {
		$(this).find("td:eq(0)").text(index + 1);
	});
	// 判断全选复选框是否需要选中
	$(window.frames["ifrm_data"].document).find("#chk_all").attr("checked", clipArr.length > 0);
	// 更新统计数字
	refreshNum();
}
/**
 * 修改密码
 */
function changePassword() {
	var url = "gotochangepwd.html";
	art.dialog.open(url, {
		title : "修改密码",
		lock : true,
		width : 385,
		height : 155,
		fixed : true,
		resize : false,
		ok : function() {
			var iframe = this.iframe.contentWindow;
			if (!iframe.document.body) {
				art.dialog.tips("正在加载，请稍候...", 1500);
				return false;
			}
			iframe.submitForm();
			return false;
		},
		cancel : true
	});
}



$(function() {
//	var bg = [ "url(\"resource/images/menu_bg_0.gif\") left top repeat-x",
//			"url(\"resource/images/menu_bg_0.gif\") left top repeat-x" ];
	var bg = [ "url(\"resource/images/icon_off.png\") 132px 12px no-repeat",
				"url(\"resource/images/icon_on.png\") 132px 12px no-repeat" ];
	// 初始化布局页面
	initView();
	/*
	// 初始化左侧菜单
	$("#menu_item dl").click(function() {     
		$("#menu_item dt").css({
			//"background" : bg[0],
			"color" : "#7E5428"
		}).addClass("inactive");
		$(this).find("dt").css({
			"color" : "#ef5404",
			"border" : "none"
			//,"background" : bg[1]
			//,"background":url(../images/icon_on.png) 232px 12px no-repeat;
		}).addClass("active");
		$("#menu_item dd").css({
			"display" : "none"
		});
		$("#menu_item dl").css({
			"height" : 33
		});
		$(this).css({
			"display" : "block",
			//"border-bottom" : "1px dashed #FF7878",
			"height" : (33 + 31 * $(this).find("dd").size()) + "px"
		});
		$(this).find("dd").css({
			"display" : "block",
			"height" : "30px",
			"width" : "130px"
		});
	});
	// 初始化侧边栏
	initClip();
	
	// 侧边栏点击事件
	$("#div_mark").click(function() {
		var _clip = $("#div_clip");
		if (_clip.is(":hidden")) {
			$(this).text("隐藏");
			_clip.fadeIn();
			// _clip.show();
		} else {
			$(this).text("展开");
			_clip.fadeOut();
		}
	});
	// 右侧区域双击显示或隐藏粘贴板
	$("#center").dblclick(function() {
		var _url = $("#ifrm_data").attr("src");
		if (_url && "process/list/2/index.html" == _url) {
			if ($("#div_clip").is(":hidden")) {
				show_clip();
			} else {
				hiddenClip();
			}
		}
	});
	*/
	// 窗口大小调整事件
	$(window).resize(function() {
		initView();
		try {
			//ifrm_data.initView();
		} catch (e) {
			//ifrm_data.location.reload();
		}
	});
	
	
	getTabHead("tab_head");
	getTabBody("tab_body");
	//初始化页面加载
	

	/*
	a = $('#menu0');
	a.parent().parent().find(".active").parent("li").children("ul").slideUp(220 / 1.2, 
            function() {
                $(this).parent("li").children("a").removeAttr("class");
                $(this).parent("li").children("a").attr("class", "inactive")
            })
	 if (a.attr("class") == "inactive") {
                a.parent("li").children("ul").slideDown(220, 
                function() {
                    a.removeAttr("class");
                    a.addClass("active")
                })
     };
     */
     var ms = document.getElementsByName("menu");
     window.setTimeout(function (){
    	 ms[0].click();
     }, 200);
     
 	
});




var params = [];

var curFrame;
var callBackFnName;
var framePass;
function findFrame(id)
{
	var fs = document.frames;
	for(var i=0;i<fs.length;i++)
	{
		//alert(fs[i].name+"    "+fs[i].location)
		if(fs[i].name.indexOf(id)>-1)
		{
			curFrame = fs[i];
			break;
		}
	}
}
/***
 * 
 * @param fid   ifram对象
 * @param fn    回调函数名称
 * @param isPass  是否需要传递参数
 */
function callBack(fid,fn,isPass)
{
	params = [];
	if(fid)
	{
		findFrame(fid);
	}
	else
	{
		curFrame = eval('ifrm'+tabs[tabIndex]);
	}
	callBackFnName = fn;
	framePass = isPass;
	autoFn();
}


var count = 0;
var maxCount = 20;//默认5秒
function autoFn()
{
	 
	if(count>=(maxCount*5)||(params.length>0||framePass))//maxCount  表示秒
	{
		 
		count = 0;
		//alert(curFrame.frames.length);
		curFrame.eval(callBackFnName).apply(this)
		
		curFrame = null;
		callBackFnName = null;
		framePass = null;
	}
	else
	{
		count++;
		window.setTimeout(autoFn,200);
	}
}


